package function;

import model.Author;
import model.GetAuthors;

import java.util.List;
import java.util.function.Consumer;
import java.util.function.Function;

public class Map1 {
    public static void main(String[] args) {
        List<Author> authors = GetAuthors.getAuthors();
//        authors.stream()//这个匿名内部类的泛型参数含义为将流中Author类型转换成String类型的流
//                //第一个map方法实现了(转换功能)是将一个流中的所有元素类型，转化成了另一种元素类型(Author->String)
//                .map(new Function<Author, String>() {
//                    @Override
//                    public String apply(Author author) {
//                        return author.getName();
//                    }
//                })
//                //第二个map实现的是(计算功能)实现的是将流中所有String元素前(上一个map方法返回的String类型的流)追加一个"认证"
//                .map(new Function<String, String>() {
//
//                    @Override
//                    public String apply(String s) {
//                        return "认证："+s;
//                    }
//                })
//                .forEach(new Consumer<String>() {
//                    @Override
//                    public void accept(String s) {
//                        System.out.println(s);
//                    }
//                });
//
        authors.stream()
                .map(author -> author.getName())
                .map(name->"认证:"+name)
                .forEach(name-> System.out.println(name));

    }
}
